Many network assurance systems rely on predefined rules to determine the health of the network. In turn, these rules can be used to trigger corrective measures and/or notify a network administrator as to the health of the network. For instance, in an assurance system for a wireless network, one rule may comprise a defined threshold for what is considered as an acceptable number of clients per access point (AP) or the channel interference, itself. More complex rules may also be created to capture conditions over time, such as a number of events in a given time window or rates of variation of metrics (e.g., the client count, channel utilization, etc.). With more advanced analytics, it may even be possible to implement such an assurance system as a remote or cloud-based service.
One such metric that may be monitored and assessed by a network assurance system is application throughput. In general, application throughput is focused not simply on the overall data throughput in the monitored network, but on the throughputs of different applications present in the network. Notably, different applications may have different requirements in terms of throughput and lack of sufficient throughput is the cause of many application malfunctions (e.g., low quality in an audio or video stream, unresponsive remote desktops, etc.).